home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 21 / CU Amiga Magazine's Super CD-ROM 21 (1998)(EMAP Images)(GB)[!][issue 1998-04].iso / CUCD / Programming / VisualBuilder / source / ObjWinSubs.c < prev    next >
Text File  |  1997-09-07  |  6KB  |  133 lines

  1. #define VBBOOL    1
  2. #define VBMENU    2
  3. #define VBSTRING  3
  4. #define VBINTEGER 4
  5. #define VBLIST    5
  6.  
  7. /* Apply the changes as the were made to the current object */
  8. VOID SetProperty(int type,Object *actobj,Object *obj, ULONG property)
  9.   struct VBList *tmpvbl;
  10.   
  11.   switch (type)
  12.   {
  13.     case VBLIST:
  14.       DoMethod((Object *)XGet(obj,MUIA_Popobject_Object),MUIM_List_GetEntry,MUIV_List_GetEntry_Active,&tmpvbl);
  15.       set(actobj,property,atoi(tmpvbl->Key));
  16.       break;
  17.     case VBBOOL:
  18.       set(actobj,property,XGet(obj,MUIA_Cycle_Active));
  19.       break;
  20.     case VBMENU:
  21.       break;
  22.     case VBSTRING:
  23.       break;
  24.     case VBINTEGER:
  25.       break;
  26.   }
  27. }
  28.  
  29. /* Get the props of the current object and show them in the proplist */
  30. /* actobj is the currently active object in the user's application   */
  31. /* destobj is the object in the object window                        */
  32. VOID GetProperty(int type,Object *actobj,Object *destobj,ULONG property)
  33. {
  34.   int i;
  35.   Object *list;
  36.   struct VBList *x;
  37.   
  38.   switch (type)
  39.   {
  40.     case VBLIST:
  41.       list=(Object *)XGet(destobj,MUIA_Popobject_Object);  
  42.       DoMethod(list,MUIM_List_GetEntry,0,&x);
  43.       for (i=1;atoi(x->Key)!=XGet(actobj,property);i++)
  44.       { DoMethod(list,MUIM_List_GetEntry,i,&x);
  45.         if(x==NULL) break;
  46.       }
  47.         
  48.       if(x!=NULL) set(destobj,MUIA_String_Contents,x->Value);
  49.       break;
  50.     case VBBOOL:
  51.       set(destobj,MUIA_Cycle_Active,XGet(actobj,property));
  52.       break;
  53.     case VBMENU:
  54.       break;
  55.     case VBSTRING:
  56.       break;
  57.     case VBINTEGER:
  58.       break;
  59.   }
  60. }
  61.    
  62.  
  63. VOID ApplyChanges(Object *actobj)
  64. {
  65.   SetProperty(VBLIST,    actobj, a->BackGround,  MUIA_Background);
  66.   SetProperty(VBMENU,    actobj, a->ContextMenu, MUIA_ContextMenu);
  67.   SetProperty(VBSTRING,  actobj, a->ControlChar, MUIA_ControlChar);
  68.   SetProperty(VBBOOL,    actobj, a->CycleChain,  MUIA_CycleChain);
  69.   SetProperty(VBBOOL,    actobj, a->Disabled,    MUIA_Disabled);
  70.   SetProperty(VBBOOL,    actobj, a->Draggable,   MUIA_Draggable);
  71.   SetProperty(VBBOOL,    actobj, a->Dropable,    MUIA_Dropable);
  72.   SetProperty(VBLIST,    actobj, a->Font,        MUIA_Font);
  73.   SetProperty(VBLIST,    actobj, a->Frame,       MUIA_Frame);
  74.   SetProperty(VBBOOL,    actobj, a->FramePhantomHoriz,MUIA_FramePhantomHoriz);
  75.   SetProperty(VBSTRING,  actobj, a->FrameTitle,  MUIA_FrameTitle);
  76.   SetProperty(VBINTEGER, actobj, a->HelpLine,    MUIA_HelpLine);
  77.   SetProperty(VBSTRING,  actobj, a->HelpNode,    MUIA_HelpNode);
  78.   SetProperty(VBBOOL,    actobj, a->HorizDisappear,MUIA_HorizDisappear);
  79.   SetProperty(VBINTEGER, actobj, a->HorizWeight, MUIA_HorizWeight);
  80.   SetProperty(VBINTEGER, actobj, a->InnerBottom, MUIA_InnerBottom);
  81.   SetProperty(VBINTEGER, actobj, a->InnerLeft,   MUIA_InnerLeft);
  82.   SetProperty(VBINTEGER, actobj, a->InnerRight,  MUIA_InnerRight);
  83.   SetProperty(VBINTEGER, actobj, a->InnerTop,    MUIA_InnerTop);
  84.   SetProperty(VBLIST,    actobj, a->InputMode,   MUIA_InputMode);
  85.   SetProperty(VBINTEGER, actobj, a->MaxHeigth,   MUIA_MaxHeight);
  86.   SetProperty(VBINTEGER, actobj, a->MaxWidth,    MUIA_MaxWidth);
  87.   SetProperty(VBSTRING,  actobj, a->ObjectID,    MUIA_ObjectID);
  88.   SetProperty(VBBOOL,    actobj, a->Selected,    MUIA_Selected);
  89.   SetProperty(VBSTRING,  actobj, a->ShortHelp,   MUIA_ShortHelp);
  90.   SetProperty(VBBOOL,    actobj, a->ShowMe,      MUIA_ShowMe);
  91.   SetProperty(VBBOOL,    actobj, a->ShowSelState,MUIA_ShowSelState);
  92.   SetProperty(VBBOOL,    actobj, a->VertDisappear,MUIA_VertDisappear);
  93.   SetProperty(VBINTEGER, actobj, a->VertWeight,  MUIA_VertWeight);
  94.   SetProperty(VBINTEGER, actobj, a->Weight,      MUIA_Weight);
  95. }
  96.  
  97. VOID UpdateObjectsWindow(Object *obj)
  98. {
  99.   GetProperty(VBLIST,    obj, a->BackGround,  MUIA_Background);
  100.   GetProperty(VBMENU,    obj, a->ContextMenu, MUIA_ContextMenu);
  101.   GetProperty(VBSTRING,  obj, a->ControlChar, MUIA_ControlChar);
  102.   GetProperty(VBBOOL,    obj, a->CycleChain,  MUIA_CycleChain);
  103.   GetProperty(VBBOOL,    obj, a->Disabled,    MUIA_Disabled);
  104.   GetProperty(VBBOOL,    obj, a->Draggable,   MUIA_Draggable);
  105.   GetProperty(VBBOOL,    obj, a->Dropable,    MUIA_Dropable);
  106.   GetProperty(VBLIST,    obj, a->Font,        MUIA_Font);
  107.   GetProperty(VBLIST,    obj, a->Frame,       MUIA_Frame);
  108.   GetProperty(VBBOOL,    obj, a->FramePhantomHoriz,MUIA_FramePhantomHoriz);
  109.   GetProperty(VBSTRING,  obj, a->FrameTitle,  MUIA_FrameTitle);
  110.   GetProperty(VBINTEGER, obj, a->HelpLine,    MUIA_HelpLine);
  111.   GetProperty(VBSTRING,  obj, a->HelpNode,    MUIA_HelpNode);
  112.   GetProperty(VBBOOL,    obj, a->HorizDisappear,MUIA_HorizDisappear);
  113.   GetProperty(VBINTEGER, obj, a->HorizWeight, MUIA_HorizWeight);
  114.   GetProperty(VBINTEGER, obj, a->InnerBottom, MUIA_InnerBottom);
  115.   GetProperty(VBINTEGER, obj, a->InnerLeft,   MUIA_InnerLeft);
  116.   GetProperty(VBINTEGER, obj, a->InnerRight,  MUIA_InnerRight);
  117.   GetProperty(VBINTEGER, obj, a->InnerTop,    MUIA_InnerTop);
  118.   GetProperty(VBLIST,    obj, a->InputMode,   MUIA_InputMode);
  119.   GetProperty(VBINTEGER, obj, a->MaxHeigth,   MUIA_MaxHeight);
  120.   GetProperty(VBINTEGER, obj, a->MaxWidth,    MUIA_MaxWidth);
  121.   GetProperty(VBSTRING,  obj, a->ObjectID,    MUIA_ObjectID);
  122.   GetProperty(VBBOOL,    obj, a->Selected,    MUIA_Selected);
  123.   GetProperty(VBSTRING,  obj, a->ShortHelp,   MUIA_ShortHelp);
  124.   GetProperty(VBBOOL,    obj, a->ShowMe,      MUIA_ShowMe);
  125.   GetProperty(VBBOOL,    obj, a->ShowSelState,MUIA_ShowSelState);
  126.   GetProperty(VBBOOL,    obj, a->VertDisappear,MUIA_VertDisappear);
  127.   GetProperty(VBINTEGER, obj, a->VertWeight,  MUIA_VertWeight);
  128.   GetProperty(VBINTEGER, obj, a->Weight,      MUIA_Weight);
  129.  
  130. }  
  131.  
  132.